11 research outputs found

    Using a simulated student to repair difficulties in collaborative learning

    Get PDF
    We describe the use of a simulated student in a synchronous but distributed collaborative learning environment in the domain of programming. The role of the simulated student is to detect and repair difficulties in collaborative learning amongst the human students, for example when a human student is too passive or when the students start chatting about off-topic conversations. The simulated student intervenes by posting messages in the shared "chat" window, just like the human students and was believed to be another human student by them. The paper describes the rules by which the simulated student operates and briefly outlines an evaluation of the system with university first year programming students. The system proved to be successful both in detecting a range of difficulties and in intervening effectively

    MODELO MULTIAGENTE PARA EL DESARROLLO DE SISTEMAS DE GESTIÓN DEL CONOCIMIENTO

    Get PDF
    RESUMENEl desarrollo de Sistemas de Gestión del Conocimiento (SGC) es una tarea compleja que debe considerar: el proceso de generación del conocimiento, la identificación y manejo de los flujos de conocimiento, las técnicas de representación y recuperación de la información, así como los mecanismos utilizados para su distribución. En el desarrollo de estos sistemas es necesario encontrar un equilibrio entre cada uno de los aspectos anteriormente mencionados. Para alcanzar este objetivo se ha diseñado un modelo que permita a los ingenieros en ciencias computacionales el desarrollo de sistemas de gestión del conocimiento. Nuestra propuesta, primeramente, define un modelo del ciclo de vida del conocimiento que, de acuerdo a la literatura y nuestra experiencia, considera cada una de las etapas que un sistema de gestión del conocimiento debe apoyar. Después, se describe la tecnología (agentes software) recomendada para dar soporte a las actividades que componen cada etapa del proceso deconocimiento. Además, se explica por qué consideramos que los agentes son una técnica adecuada para este fin y cómo ellos colaboran en la arquitectura propuesta intercambiando información. Por último se describe un prototipo para la gestión del conocimiento en el dominio de mantenimiento del software, este prototipo implementa los agentes inteligentes explicados en la arquitectura. PALABRAS CLAVE Gestión del ConocimientoSistemas de Gestión del ConocimientoSistemas MultiagentesAgentes Software ABSTRACTDeveloping Knowledge Management Systems (KMS) is a complicated task since it is necessary to take into account how the knowledge is generated, how it can be distributed in order to reuse it and other aspects related to the knowledge flows. On the other hand, many technical aspects should also be considered such as what knowledge representation or retrieval technique is going to be used. To find a balance between both aspects is important if we want to develop a successful system. However, developers often focus on technical aspects giving less importance to knowledge issues. In order to avoid this, we have designed a model to help computer science engineers to develop these kinds of systems. In our proposal, firstly, we define a knowledge life cycle model that, according to literature and our experience, ponders all the stages that a knowledge management system should give support to. Later, we describe the technology (software agents) that we recommend to support the activities of each stage. The paper explains why we consider that software agents are suitable for this end and how they can work in order to reach their goals. Moreover, a prototype for the knowledge management in thesoftware maintenance domain has been developed by using the agents described in the architecture. KEYWORDSKnowledge ManagementKnowledge Management SystemsMultiagents SystemsSoftware Agent

    Evaluating GSD-Aware: A Serious Game for Discovering Global Software Development Challenges

    Get PDF
    Global Software Development (GSD) is currently a strong industry trend. This means that if computer science engineers are to be trained to deal with this model, it is very important to include the topic in software engineering courses, attempting to ensure that students learn about GSD and become familiar with its advantages and challenges. However, software engineering courses do not always consider including it in their curricula. It must also be recognized that it is difficult to find a suitable method to teach/develop the different skills needed for GSD. There is often a lot of content and not a great deal of time available to teach it. In this article, we propose the use of a serious game called GSD-Aware, with which students can “suffer” some of the typical challenges of GSD by interacting with avatars and by using several means of communication to solve a number of problems posed. The article focuses on the description of the game and on the empirical study conducted to analyze whether GSD-Aware helps students to be conscious of GSD challenges. It was discovered that after 50 minutes playing the game, the students were aware of the greater influence that the following factors can have: lack of coordination, lack of trust, cultural differences, lack of face-to-face and informal communication, time difference, and lack of team spirit. In their final analysis, students agreed that the serious game scenarios helped them to understand what GSD is and to grasp the importance of some GSD challenges.El desarrollo global de software (GSD) es actualmente una fuerte tendencia en la industria. Esto significa que si se quiere formar ingenieros informáticos para manejar este modelo, es muy importante incluir el tema en los cursos de ingeniería de software, tratando de que los estudiantes aprendan sobre GSD y se familiaricen con sus ventajas y desafíos. Sin embargo, los cursos de ingeniería de software no siempre consideran incluirlo en sus planes de estudio. También se debe reconocer que es difícil encontrar un método adecuado para enseñar/desarrollar las diferentes habilidades necesarias para GSD. A menudo hay mucho contenido y no mucho tiempo disponible para enseñarlo. En este artículo, proponemos el uso de un juego serio llamado GSD-Aware, con el que los alumnos pueden “sufrir” algunos de los retos típicos de GSD interactuando con avatares y utilizando varios medios de comunicación para resolver una serie de problemas planteados. El artículo se centra en la descripción del juego y en el estudio empírico realizado para analizar si GSD-Aware ayuda a los estudiantes a ser conscientes de los desafíos de GSD. Se descubrió que después de 50 minutos de jugar el juego, los estudiantes eran conscientes de la mayor influencia que pueden tener los siguientes factores: falta de coordinación, falta de confianza, diferencias culturales, falta de comunicación cara a cara e informal, diferencia horaria. y falta de espíritu de equipo. En su análisis final, los estudiantes acordaron que los escenarios de juegos serios les ayudaron a comprender qué es GSD y a comprender la importancia de algunos desafíos de GSD. El artículo se centra en la descripción del juego y en el estudio empírico realizado para analizar si GSD-Aware ayuda a los estudiantes a ser conscientes de los desafíos de GSD. Se descubrió que después de 50 minutos de jugar el juego, los estudiantes eran conscientes de la mayor influencia que pueden tener los siguientes factores: falta de coordinación, falta de confianza, diferencias culturales, falta de comunicación cara a cara e informal, diferencia horaria. y falta de espíritu de equipo. En su análisis final, los estudiantes acordaron que los escenarios de juegos serios les ayudaron a comprender qué es GSD y a comprender la importancia de algunos desafíos de GSD. El artículo se centra en la descripción del juego y en el estudio empírico realizado para analizar si GSD-Aware ayuda a los estudiantes a ser conscientes de los desafíos de GSD. Se descubrió que después de 50 minutos de jugar el juego, los estudiantes eran conscientes de la mayor influencia que pueden tener los siguientes factores: falta de coordinación, falta de confianza, diferencias culturales, falta de comunicación cara a cara e informal, diferencia horaria. y falta de espíritu de equipo. En su análisis final, los estudiantes acordaron que los escenarios de juegos serios les ayudaron a comprender qué es GSD y a comprender la importancia de algunos desafíos de GSD. los estudiantes fueron conscientes de la mayor influencia que pueden tener los siguientes factores: falta de coordinación, falta de confianza, diferencias culturales, falta de comunicación cara a cara e informal, diferencia horaria y falta de espíritu de equipo. En su análisis final, los estudiantes acordaron que los escenarios de juegos serios les ayudaron a comprender qué es GSD y a comprender la importancia de algunos desafíos de GSD. los estudiantes fueron conscientes de la mayor influencia que pueden tener los siguientes factores: falta de coordinación, falta de confianza, diferencias culturales, falta de comunicación cara a cara e informal, diferencia horaria y falta de espíritu de equipo. En su análisis final, los estudiantes acordaron que los escenarios de juegos serios les ayudaron a comprender qué es GSD y a comprender la importancia de algunos desafíos de GSD

    IT Governance

    Get PDF
    Corporate Governance Encompasses the set of rules, processes, and methods aimed at defining and meeting the strategic objectives of an organization.1 These objectives normally have long-term repercussions and define the road map of the companies, considering the different entities directly affected by the strategic decisions taken, such as external stakeholders

    Global Software Development governance: Challenges and solutions

    Get PDF
    Global software development (GSD) has become a rising software developmentmodel in the last few years. Although much research has been performed in terms ofGSD management, GSD governance research is scarce at the present time and pre-sents multiple challenges that need to be addressed. In this paper, a systematic map-ping study has been conducted, the aim of which was to discover the main issuesdealt with in GSD governance literature, as well as to point out the particularresearch gaps that are still present in this domain. This allowed us to find out newchallenges to be addressed, along with possible solutions to these. The results reveala lack of research in key aspects such as tools, culture, people, and information, all ofwhich provides a great opportunity for future approaches while also highlighting newopportunities in GSD governance researc

    Towards a reduction in architectural knowledge vaporization during agile global software development

    No full text
    Context: The adoption of agile methods is a trend in global software development (GSD), but may result in many challenges. One important challenge is architectural knowledge (AK) management, since agile developers prefer sharing knowledge through face-to-face interactions, while in GSD the preferred manner is documents. Agile knowledge-sharing practices tend to predominate in GSD companies that practice agile development (AGSD), leading to a lack of documents, such as architectural designs, data models, deployment specifications, etc., resulting in the loss of AK over time, i.e., it vaporizes. Objective: In a previous study, we found that there is important AK in the log files of unstructured textual electronic media (UTEM), such as instant messengers, emails, forums, etc., which are the preferred means employed in AGSD to contact remote teammates. The objective of this paper is to present and evaluate a proposal with which to recover AK from UTEM logs. We developed and evaluated a prototype that implements our proposal in order to determine its feasibility. Method: The evaluation was performed by conducting a study with agile/global developers and students, who used the prototype and different UTEM to execute tasks that emulate common situations concerning AGSD teams’ lack of documentation during development phases. Results: Our prototype was considered a useful, usable and unobtrusive tool when retrieving AK from UTEM logs. The participants also preferred our prototype when searching for AK and found AK faster with the prototype than with UTEM when the origin of the AK required was unknown. Conclusion: The participants’ performance and perceptions when using our prototype provided evidence that our proposal could reduce AK vaporization in AGSD environments. These results encourage us to evaluate our proposal in a long-term test as future work

    A Survey and Comparative Analysis

    No full text
    Software development has been impacted by the arrival of agile frameworks, especially in the last two decades. The HELENA Project (Hybrid dEveLopmENt Approaches in software systems development) was developed to identify the use of these frameworks in relation to more traditional ones. As part of this project, a survey was carried out in 55 countries, including Spain and Costa Rica. This paper presents the comparison of the results of these two countries, particularly in relation to two topics: the degree of agility of the activities of the software development life cycle and what are the most used methods and frameworks in each country. The results show similarities in both topics for the two countries, such as the fact that the most agile-oriented activities are Implementation/Coding and Integration/Testing, or the widespread use of agile frameworks with Scrum in the first place, followed by Iterative Development and Kanban. There are, however, some differences, such as a greater presence in Spain of scaling agile frameworks

    What Makes Agile Software Development Agile

    Get PDF
    Together with many success stories, promises such as the increase in production speed and the improvement in stakeholders\u27 collaboration have contributed to making agile a transformation in the software industry in which many companies want to take part. However, driven either by a natural and expected evolution or by contextual factors that challenge the adoption of agile methods as prescribed by their creator(s), software processes in practice mutate into hybrids over time. Are these still agile In this article, we investigate the question: what makes a software development method agile We present an empirical study grounded in a large-scale international survey that aims to identify software development methods and practices that improve or tame agility. Based on 556 data points, we analyze the perceived degree of agility in the implementation of standard project disciplines and its relation to used development methods and practices. Our findings suggest that only a small number of participants operate their projects in a purely traditional or agile manner (under 15%). That said, most project disciplines and most practices show a clear trend towards increasing degrees of agility. Compared to the methods used to develop software, the selection of practices has a stronger effect on the degree of agility of a given discipline. Finally, there are no methods or practices that explicitly guarantee or prevent agility. We conclude that agility cannot be defined solely at the process level. Additional factors need to be taken into account when trying to implement or improve agility in a software company. Finally, we discuss the field of software process-related research in the light of our findings and present a roadmap for future research
    corecore